package ace.module.account.oauth2.api.model.input;

import ace.module.oauth2.server.api.callback.model.input.Oauth2AceAuthenticationCallbackInput;
import jakarta.annotation.Nullable;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotNull;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author caspar
 * @date 2024/7/11 15:37
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class IamOauth2CallbackAuthenticationInput {

  @Valid
  @NotNull
  private Oauth2AceAuthenticationCallbackInput oauth2AuthenticationCallbackInput;

  @NotNull
  private Long iamAppId;

  @Nullable
  private String accountTag;
}
